//============相册列表=================
var $table = $('#photosTable');
function initTable() {
	// 先销毁表格
	$table.bootstrapTable('destroy');
	// 初始化表格,动态从服务器加载数据
	$table.bootstrapTable({
				method : "get", // 使用get请求到服务器获取数据
				url : "/photos", // 获取数据的Servlet地址
				method : 'get', // 请求方式（*）
				queryParams : function() {
					return {
						order : 'desc'
					}
				},
				toolbar : '#toolbar', // 工具按钮用哪个容器
				striped : true, // 是否显示行间隔色
				cache : false, // 是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
				pagination : true, // 是否显示分页（*）
				sortable : true, // 是否启用排序
				sortOrder : "asc", // 排序方式
				// queryParams: queryParams,//传递参数（*）
				sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
				pageNumber : 1, // 初始化加载第一页，默认第一页
				pageSize : 10, // 每页的记录行数（*）
				pageList : [ 10, 25, 50, 100 ], // 可供选择的每页的行数（*）
				strictSearch : true,
				clickToSelect : true, // 是否启用点击选中行
				// height: 460, //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
				uniqueId : "id", // 每一行的唯一标识，一般为主键列
				cardView : false, // 是否显示详细视图
				detailView : false, // 是否显示父子表
				onLoadSuccess : function() {
					var $select = $(".editable-order-select");
					for (var i = 0; i < $select.size(); i++) {
						var $orderSelcct = $($select[i]);
						var value = $orderSelcct.attr("data-val");
						loadOrder($orderSelcct, value);
					}
				},
				columns : [
						{
							field : 'id',
							title : '序号'
						},{
							field : 'name',
							title : '名称',
						},{
							field : 'category',
							title : '栏目',
							formatter : function(value, row, index) {
								if (value != null && value.name) {
									return [ value.name ].join('');
								}
								return "无";
							}
						},{
							field : 'order',
							title : '置顶',
							formatter : function(value, row, index) {
								return [
										'<select name="order" class="form-control editable-order-select" onchange="updatePhotosOrder(this',
										',', row.id, ')" data-val="', value,
										'">', '<option value="5" >普通</option>',
										'<option value="4">置顶1</option>',
										'<option value="3">置顶2</option>',
										'<option value="2">置顶3</option>',
										'<option value="6">置后1</option>',
										'<option value="7">置后2</option>',
										'<option value="8">置后3</option>',
										' </select>', ].join('');

							}
						},{
							field : 'logo',
							title : '图片',

							formatter : function(value, row, index) {
								return [ '<img src="', value,
										'" style="max-height:50px;max-width:50px"/>' ]
										.join('');
							}
						},{
							field : 'operate',
							title : 'Item Operate',
							align : 'center',
							events : {
								//点击编辑事件
								'click .edit' : function(e, value, row, index) {
									var id = row.id;
									var name = row.name;
									var introduce = row.introduce;
									var logo = row.logo;
									var order = row.order;
									var category = "";
									if(row.category&&row.category.id){
										category = row.category.id;										
									}
									console.log(row);
									$(".updatePhotosForm[name='id']").val(id);
									$(".updatePhotosForm[name='name']").val(name);
									$(".updatePhotosForm[name='introduce']").val(introduce);
									$('.updatePhotosForm[name="logo"]').attr('src',logo);
									$('.updatePhotosForm[name="order"]').val(order);
									$('.updatePhotosForm[name="category"]').val(category);
									$('#myModal').modal('show');
									
								},
								//点击删除事件
								'click .remove' : function(e, value, row, index) {
									$.ajax({
										url : '/admin/photos',
										type : 'post',
										data : {
											id : row.id,
											_method : 'delete'
										},
										success : function(data) {
											$.notify("删除成功", {
												position : 'top center',
												className : 'success'
											});
											$table.bootstrapTable('remove', {
												field : 'id',
												values : [ row.id ]
											});
										},
										error : function() {
											$.notify("删除失败", {
												position : 'top center',
												className : 'error'
											});
										}
									})

								}
							},
							formatter : operateFormatter
						} ]
			});
}

$(document).ready(function() {
	// 调用函数，初始化表格
	initTable();

	// 当点击查询按钮的时候执行
	$("#search").bind("click", initTable);
	
	initPhotosSelector();
});

function loadOrder($select,value){
	$select.val(value);
}

function initPhotosSelector(){
	$photosSelect = $('.photosCategoryList') ;
	$.ajax({
		url:'/allPhotosCategorys',
		type:'get',
		success:function(data){
			console.log(data);
			for(var i=0;i<data.length;i++){
				var category = data[i];				
				$photosSelect.append('<option value="'+category.id+'">'+category.name+'</option>')				
			}
		}
	})
}

function selectPhotosCategory(){
	var categoryId = $(this).val();
	$table.bootstrapTable('refresh',{
		query: {categoryId: categoryId}
	});
	
}

function operateFormatter(value, row, index) {
	return [ '<a class="edit" href="javascript:void(0)" title="Edit">',
			'<i class="glyphicon glyphicon-edit"></i>', '</a>  ',
			'<a class="remove" href="javascript:void(0)" title="Remove">',
			'<i class="glyphicon glyphicon-remove"></i>', '</a>' ].join('');
}

function updatePhotosOrder(orderSelect,id){
	var order = $(orderSelect).val();
	$.ajax({
		url:'/admin/photos/order',
		type:'post',
		data:{
			_method:'put',
			id:id,
			order:order,
		},
		success:function(data){
			if(data=="success"){
				$.notify("修改置顶级别成功", {
					position : 'top center',
					className : 'success'
				});
			}
		}
	
	})
}

$(function() {
	$('.photosCategorySelect').bind('change',function(){
		var cid = $(this).val();
		$table.bootstrapTable('refresh',{query: {order: 'desc',cid:cid}});
	})
});
//编辑相册点击保存事件
function updatePhotos(){
	var id = $(".updatePhotosForm[name='id']").val();
	var name = $(".updatePhotosForm[name='name']").val();
	var introduce = $(".updatePhotosForm[name='introduce']").val();
	var logo = $('.updatePhotosForm[name="logo"]').attr('src');
	var order = $('.updatePhotosForm[name="order"]').val();
	var category = $('.updatePhotosForm[name="category"]').val();
	$.ajax({
		url:'/admin/photos',
		type:'post',
		data:{
			name:name,
			id:id,
			introduce:introduce,	
			logo:logo,
			order:order,
			'category.id':category,
			_method:'put',
		},
		success:function(data){
			if(data!='success'){
				$.notify("修改失败", {
					position : 'top center',
					className : 'error'
				});
				return ;
			}
			$.notify("修改成功", {
				position : 'top center',
				className : 'success'
			});
			$table.bootstrapTable("refresh");
			
		},
		error:function(){
			$.notify("修改失败", {
				position : 'top center',
				className : 'error'
			});
		}
	})
	$('#myModal').modal('hide');
}

function uploadPhotosLogo(){
	var formData = new FormData($('.photoUpladForm')[0]);
	$.ajax({
		url:'/admin/file',
		type:'post',
		data:formData,
		contentType: false,
	    processData: false,
		success:function(data){
			if(data.msg=='ok'){
    			var url = data.data;
    			$('.updatePhotosForm[name="logo"]').attr('src',url);
    			   				
			}
		}
	});
}

function selectPhoto(){
	$('.input-file[name="uploadFile"]').click();
}